Some content management systems in use today incorporate the concept of separation of content and style. This separation simplifies the maintenance of the system and provides a separation of the roles of content creators and style designers. Separation of content from the design simplifies maintenance of both the content and the design. Each is controlled separately and can be authored by people with the appropriate skill sets. As the content evolves, authors of that content can modify the fragments of information. As the design evolves, designers responsible for the look and feel can modify the style sheets that embody the design. Thus, design rules are encoded and stored centrally thereby increasing the integrity of the overall design strategy. Such approaches facilitate a strong and consistent brand across the published information. This separation of content and design also eases the delivery of content to new devices. Each new device represents a new set of style sheets while the content remains unaffected.
Modern content management systems also build on the concept of content fragments, where fragments are pieces of reusable content that can be used in multiple documents, pages or any artifacts that are managed by the system. In most cases those fragments are represented as XML (Extensible Markup Language) or HTML (Hypertext Markup Language) constructs. Users of the content management system select a subset of those fragments to construct artifacts that are targeted for a certain modality of delivery and presentation and customized for a certain category of recipients.
With a fragment-based system, there is no limit to the ability to reuse the information. When properly tagged, content can be reused for customization to different audience segments as well as different devices. However, along with this reuse comes the need to effectively update dependent content and design fragments. A system that takes this approach, must also maintain dependencies for automatic and efficient updates. This intelligent updating of content also applies to the updating of the display designs for the data. The dependency on a particular style sheet is maintained and when that asset changes, the dependent pages are automatically updated. A drawback to this approach is that a change in one style sheet or one content asset may trigger the republishing of a major portion of the site which can be a time consuming operation. Therefore, care is taken to only include relevant information in fragments or style sheets that are used across many pages.
One of the problems with fragment-based systems is that the definition of each fragment can take into consideration only the uses that are contemplated for that type of fragment at the time of fragment definition. Since it is not typically possible to know, a priori, all the possible use scenarios, when new uses arise, there is the need to modify the fragment definition. A change of fragment definitions requires a change to the corresponding style sheets in order to enable the presentation of the fragment in the new contexts without disturbing their presentation in the preexisting contexts.
It is beneficial for such tools, and the designers who use them, to be able to easily adapt to an environment of continuous improvement and change. For example, designers cannot be present at all times to create each presentation. Likewise, systems must support the design process to ensure the consistent and timely presentation of information. Therefore a need exists to overcome the problems with the prior art as discussed above.